<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>叠加单值专题图</title>
    <style type="text/css">
        body{
            margin: 0;
            overflow: hidden;
            background: #fff;
        }
        #map{
            position: relative;
            height: 510px;
            border:1px solid #3473b7;
        }
        #toolbar {
            position: relative;
            padding-top: 5px;
            padding-bottom: 10px;
        }
    </style>
    <link href='./css/bootstrap.min.css' rel='stylesheet' />
    <link href='./css/bootstrap-responsive.min.css' rel='stylesheet' />
    <link rel="stylesheet" href="http://openlayers.org/en/v3.10.1/css/ol.css" type="text/css">
    <script src="http://openlayers.org/en/v3.10.1/build/ol.js" type="text/javascript"></script>
    <script type="text/javascript" src="../libs/SuperMap.Include.js"></script>
    <script type="text/javascript" src="js/iConnector/iConnectorOpenLayers3.js"></script>
    <script>
        var map,themeLayer,
                host = document.location.toString().match(/file:\/\//) ? "http://localhost:8090" : 'http://' + document.location.host;
        url = host + "/iserver/services/map-china400/rest/maps/China";
        function init(){
            map = new ol.Map({
                layers: [
                    new ol.layer.Tile({
                        source: new ol.source.OSM({
                        })
                    })
                ],
                target: 'map' ,
                controls: ol.control.defaults().extend([
                    new ol.control.ScaleLine({
                    })]
                ),
                view: new ol.View({
                    projection:"EPSG:3857" ,
                    center: [12080677, 4591416],
                    zoom: 3
                })

            });
        }
        function addThemeUnique() {
            themeLayer&&map.removeLayer(themeLayer);
            var themeService = new SuperMap.REST.ThemeService(url, {eventListeners:{"processCompleted": themeCompleted, "processFailed": themeFailed}});
            var style1, style2, style3, style4, style5, style6;
            style1 = new SuperMap.REST.ServerStyle({
                fillForeColor: new SuperMap.REST.ServerColor(248, 203, 249),
                lineColor: new SuperMap.REST.ServerColor(0, 0, 0),
                lineWidth: 0.1
            });
            style2 = new SuperMap.REST.ServerStyle({
                fillForeColor: new SuperMap.REST.ServerColor(196, 255, 189),
                lineColor: new SuperMap.REST.ServerColor(0, 0, 0),
                lineWidth: 0.1
            });
            style3 = new SuperMap.REST.ServerStyle({
                fillForeColor: new SuperMap.REST.ServerColor(255, 173, 173),
                lineColor: new SuperMap.REST.ServerColor(0, 0, 0),
                lineWidth: 0.1
            });
            style4 = new SuperMap.REST.ServerStyle({
                fillForeColor: new SuperMap.REST.ServerColor(255, 239, 168),
                lineColor: new SuperMap.REST.ServerColor(0, 0, 0),
                lineWidth: 0.1
            });
            style5 = new SuperMap.REST.ServerStyle({
                fillForeColor: new SuperMap.REST.ServerColor(173, 209, 255),
                lineColor: new SuperMap.REST.ServerColor(0, 0, 0),
                lineWidth: 0.1
            });
            style6 = new SuperMap.REST.ServerStyle({
                fillForeColor: new SuperMap.REST.ServerColor(132, 164, 232),
                lineColor: new SuperMap.REST.ServerColor(0, 0, 0),
                lineWidth: 0.1
            });


            var themeUniqueIteme1 = new SuperMap.REST.ThemeUniqueItem({
                        unique: "黑龙江省",
                        style: style1
                    }),
                    themeUniqueIteme2 = new SuperMap.REST.ThemeUniqueItem({
                        unique: "湖北省",
                        style: style2
                    }),
                    themeUniqueIteme3 = new SuperMap.REST.ThemeUniqueItem({
                        unique: "吉林省",
                        style: style3
                    }),
                    themeUniqueIteme4 = new SuperMap.REST.ThemeUniqueItem({
                        unique: "内蒙古自治区",
                        style: style4
                    }),
                    themeUniqueIteme5 = new SuperMap.REST.ThemeUniqueItem({
                        unique: "青海省",
                        style: style5
                    }),
                    themeUniqueIteme6 = new SuperMap.REST.ThemeUniqueItem({
                        unique: "新疆维吾尔自治区",
                        style: style6
                    }),
                    themeUniqueIteme7 = new SuperMap.REST.ThemeUniqueItem({
                        unique: "云南省",
                        style: style1
                    }),
                    themeUniqueIteme8 = new SuperMap.REST.ThemeUniqueItem({
                        unique: "四川省",
                        style: style4
                    }),
                    themeUniqueIteme9 = new SuperMap.REST.ThemeUniqueItem({
                        unique: "贵州省",
                        style: style3
                    }),
                    themeUniqueIteme10 = new SuperMap.REST.ThemeUniqueItem({
                        unique: "甘肃省",
                        style: style3
                    }),
                    themeUniqueIteme11 = new SuperMap.REST.ThemeUniqueItem({
                        unique: "宁夏回族自治区",
                        style: style5
                    }),
                    themeUniqueIteme12 = new SuperMap.REST.ThemeUniqueItem({
                        unique: "重庆市",
                        style: style6
                    }),
                    themeUniqueIteme13 = new SuperMap.REST.ThemeUniqueItem({
                        unique: "山东省",
                        style: style1
                    }),
                    themeUniqueIteme14 = new SuperMap.REST.ThemeUniqueItem({
                        unique: "安徽省",
                        style: style2
                    }),
                    themeUniqueIteme15 = new SuperMap.REST.ThemeUniqueItem({
                        unique: "江西省",
                        style: style3
                    }),
                    themeUniqueIteme16 = new SuperMap.REST.ThemeUniqueItem({
                        unique: "浙江省",
                        style: style4
                    }),
                    themeUniqueIteme17 = new SuperMap.REST.ThemeUniqueItem({
                        unique: "台湾省",
                        style: style2
                    }),
                    themeUniqueIteme18 = new SuperMap.REST.ThemeUniqueItem({
                        unique: "江苏省",
                        style: style6
                    }),
                    themeUniqueIteme19 = new SuperMap.REST.ThemeUniqueItem({
                        unique: "湖南省",
                        style: style5
                    }),
                    themeUniqueIteme20 = new SuperMap.REST.ThemeUniqueItem({
                        unique: "河南省",
                        style: style4
                    }),
                    themeUniqueIteme21 = new SuperMap.REST.ThemeUniqueItem({
                        unique: "河北省",
                        style: style3
                    }),
                    themeUniqueIteme22 = new SuperMap.REST.ThemeUniqueItem({
                        unique: "福建省",
                        style: style5
                    }),
                    themeUniqueIteme23 = new SuperMap.REST.ThemeUniqueItem({
                        unique: "广西壮族自治区",
                        style: style6
                    }),
                    themeUniqueIteme24 = new SuperMap.REST.ThemeUniqueItem({
                        unique: "西藏自治区",
                        style: style2
                    }),
                    themeUniqueIteme25 = new SuperMap.REST.ThemeUniqueItem({
                        unique: "广东省",
                        style: style4
                    }),
                    themeUniqueIteme26 = new SuperMap.REST.ThemeUniqueItem({
                        unique: "山西省",
                        style: style2
                    }),
                    themeUniqueIteme27 = new SuperMap.REST.ThemeUniqueItem({
                        unique: "陕西省",
                        style: style1
                    }),
                    themeUniqueIteme28 = new SuperMap.REST.ThemeUniqueItem({
                        unique: "天津市",
                        style: style5
                    }),
                    themeUniqueIteme29 = new SuperMap.REST.ThemeUniqueItem({
                        unique: "北京市",
                        style: style2
                    }),

                    themeUniqueIteme30 = new SuperMap.REST.ThemeUniqueItem({
                        unique: "辽宁省",
                        style: style1
                    });

            var themeUniqueItemes=[themeUniqueIteme1, themeUniqueIteme2, themeUniqueIteme3, themeUniqueIteme4, themeUniqueIteme5, themeUniqueIteme6,themeUniqueIteme7,themeUniqueIteme8,themeUniqueIteme9,themeUniqueIteme10,themeUniqueIteme11,themeUniqueIteme12, themeUniqueIteme13,themeUniqueIteme14,themeUniqueIteme15,themeUniqueIteme16,themeUniqueIteme17,themeUniqueIteme18,themeUniqueIteme19,themeUniqueIteme20,themeUniqueIteme21,themeUniqueIteme22,themeUniqueIteme23,themeUniqueIteme24,themeUniqueIteme25,themeUniqueIteme26,themeUniqueIteme27,themeUniqueIteme28,themeUniqueIteme29,themeUniqueIteme30];

            var themeUnique = new SuperMap.REST.ThemeUnique({
                uniqueExpression: "Name",
                items: themeUniqueItemes,
                defaultStyle: style1
            });
            themeParameters = new SuperMap.REST.ThemeParameters({
                datasetNames: ["China_Province_pg"],
                dataSourceNames: ["China"],
                themes: [themeUnique]
            });

            themeService.processAsync(themeParameters);
        }

        function themeCompleted(themeEventArgs) {
            if(themeEventArgs.result.resourceInfo.id) {
                themeLayer=SuperMap.Web.iConnector.OpenLayers3.getLayer(url,{layersID:themeEventArgs.result.resourceInfo.id,pro:"3857"})
                map.addLayer(themeLayer);
            }
        }
        function themeFailed(serviceFailedEventArgs) {
            alert(serviceFailedEventArgs.error.errorMsg);
        }
    </script>
</head>
<body onload="init()">
<div id="toolbar">
    <input type="button" class="btn" value="创建单值专题图" onclick="addThemeUnique()" />
</div>
         <div id="map" ></div>
</body>
</html>